
package controle;

import java.sql.SQLException;
import java.util.List;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.inject.Named;
import modelo.Paciente;
import persistencia.PacienteDAO;

@Named(value = "PacienteMB")
@ManagedBean
@RequestScoped
public class PacienteMB {

    private Paciente paciente;

    private PacienteDAO pacienteDAO;

    private List<Paciente> nome;

    public PacienteMB() throws SQLException {
        paciente = new Paciente();
        pacienteDAO = new PacienteDAO();
        nome = pacienteDAO.getTodosPaciente(PacienteDAO.ORDEM_POR_ID);
    }

    public List<Paciente> getNomes() {
        return nome;
    }

    public Paciente getPaciente() {
        return paciente;
    }

    public void setPaciente(Paciente paciente) {
        this.paciente = paciente;
    }

   

    public void confirmar() throws SQLException {
        if (this.paciente.getId() == 0) {
            pacienteDAO.confirmar(paciente);
        } 
        nome = pacienteDAO.getTodosPaciente(PacienteDAO.ORDEM_POR_ID);
    }

    public void alterar(Paciente nome) {
        this.paciente = nome;
    }

    public void cancelar(Paciente paciente) throws SQLException {
        pacienteDAO.cancelar(paciente);
        nome = pacienteDAO.getTodosPaciente(PacienteDAO.ORDEM_POR_ID);
    }

    public void ordenaPorId() throws SQLException {
        nome = pacienteDAO.getTodosPaciente(PacienteDAO.ORDEM_POR_ID);
    }
    
    public void ordenaPorNome() throws SQLException {
        nome = pacienteDAO.getTodosPaciente(PacienteDAO.ORDEM_POR_NOME);
    }

}
